package services;

import java.util.List;

import javax.ejb.Remote;

import xml.RecibirSolicitudXML;
import xml.RespuestaXML;
import dtos.ArticuloDTO;
import dtos.ModuloDTO;
import dtos.OrdenDespachoDTO;
import dtos.OrdenPedidoDTO;
import dtos.ServiciosModuloDTO;
import dtos.SolicitudDTO;
import entities.ServiciosModulo;
import entities.Solicitud;
import exceptions.EntityAlreadyExistException;

@Remote
public interface AdministrarDespacho {

	void CrearOrdenDeDespacho(OrdenPedidoDTO orden) throws EntityAlreadyExistException;
	void CargarArticulo(String codigo, String descripcion, int idModulo) throws EntityAlreadyExistException;
	void cargarSolicitud(SolicitudDTO s);
	List<SolicitudDTO> getSolicitudesPendientes();
	ServiciosModuloDTO buscarServicio(int servicio, int idModulo);
	ModuloDTO getModuloActivo(String modulo);
	RespuestaXML recibirSolicitudesJSON(RecibirSolicitudXML str);
	boolean guardarModulo(ModuloDTO mod);
	List<ModuloDTO> getAllModulo();
	ModuloDTO getModulo(int codigo);
	List<ArticuloDTO> getArticulos();
	Solicitud buscarSolicitud (int codigo);

	List<SolicitudDTO> getSolicitudesPorEstado(int i);
	List<OrdenDespachoDTO> GetAllOrdenesDespacho();
	void procesoOrdenes(Solicitud s);

}
